<HTML>
<HEAD>
<TITLE>RISCOS Samba Server</TITLE>
</HEAD>
<BODY bgcolor=white text=black LINK="#0000FF" VLINK="#8700BA" ALINK="#FF0000">
<H1 ALIGN=centre><IMG SRC="images/logo.jpg"> RISCOS Samba Server <IMG SRC="images/logo.jpg"></H1>
<P>
<A HREF="samba_01.htm"><IMG SRC="images/left.gif" ALIGH=LEFT BORDER=0></A> <A HREF="SAMBA.htm"><IMG SRC="images/cont.jpg" ALIGH=CENTRE BORDER=0></A> <A HREF="samba_03.htm" ALIGN=right><IMG SRC="images/right.gif"  ALIGN=RIGHT BORDER=0></A>  
<HR>

<H2><A NAME="limit">2 Limitations</H2><P>
<H3><A NAME="protocol">2.1 Protocol</H3><P>
SmbServer currently supports the following protocols:<P>
<UL>
<LI>CORE (also known as "PC NETWORK PROGRAM 1.0")
<LI>COREPLUS ("MICROSOFT NETWORKS 1.03")
<LI>LANMAN1 ("MICROSOFT NETWORKS 3.0" or "LANMAN1.0")
<LI>LANMAN2 ("DOS LM1.2X002" or "LM1.2X002")
<LI>NT1 ("NT LM 0.12" or "NT LANMAN 1.0")
</UL><P>
The main advantage of LANMAN2 and NT1 is support for long filenames. NT1 is the default. If the RISCOS filing system being shared does not support long filenames and you save a filename longer than 10 characters the filename will be truncated.
<P>
<H3><A NAME="access">2.2 Access</H3><P>
Only "Share" level access is supported. User level access is not yet supported.<P>
<P>
<H3><A NAME="files">2.3 File Names</H3><P>
<H4><A NAME="fname2">2.3.1</A> Long file names</H4><P>               
In the CORE protocol when a filename longer than 8 characters is read by Samba, the name is mangled by Samba to fit it in 8 characters not including the filetype. This appears as a ~ followed by two characters at the end of the main part of the name. When the protocol level is set to LANMAN2 or NT1 long file names are supported.<P>
<H4><A NAME="fname3">2.3.2</A> Creating file names</H4><P>
For Windows fred.bat and fred.exe are different names, but in RISCOS once the file type is stripped off they are the same name. Consequently if the <A HREF="samba_03.htm#shareswind">Strip Extension Flag</A> is set for a share when clients create files !smbserver makes sure that they are unique. For example, if Windows created the above two files, !smbserver calls the first fred and the second fred0 ('' is ALT+'\')(Versions prior to 0.06 used the '/' character (fred/0) instead). When the client examines the directory they appear as fred.bat and fred.exe.<P>
!smbserver does not truncate filenames if they are longer than 10 characters (excluding filetype), so be careful not
to save filenames longer than 10 characters unless the filing system supports it.<P>
(Make sure you have file truncation on so ADFS does not report a Bad Name error. (*configure truncate on)).<P>
<H3><A NAME="ftype">2.4 File Types</A></H3>
!smbserver appends file types to file names. It asks the Mimemap module to convert filetypes to DOS extensions and to convert extensions to RISCOS filetypes. If the Mimemap module does not know the filetype or extension then it looks up the file type in a filetype database which stores a 3 letter extension for each filetype known to !smbserver. The database is in the file &lt;samba$dir>.Resources.FileTypes. This file is read when !smbserver starts and written out again when !smbserver is closed. The format of the file is:
<P>
<table cellpadding="0" cellspacing="0" border="0" bgcolor=#ddffdd width=100%>
<tr>
<td valign="top"><PRE>0x&lt;hex file type> : &lt;three letter extension></PRE></td></tr></table>
<P>e.g.<P>
<table cellpadding="0" cellspacing="0" border="0" bgcolor=#ddffdd width=100%>
<tr>
<td valign="top"><PRE>0xc85 : jpg</PRE></td></tr></table><P>
If a file has a type that is not in the database then !smbserver appends the hex value of the file type to the file name.<P>
When !smbserver creates a file it strips the extension (if there is one and the Strip Extension is set), finds the extension from Mimemap or in the file type database and sets the filetype to the given value. If there isn't one it chooses the next free one starting from 0x001. If a file has no extension, !smbserver sets the type to 0x000 and treats this as a special case.<P>
For smooth operation of the file type algorithms the following changes to the file &lt;Inet$MimeMappings> (usually in &lt;InetDBase$Path>.Mimemap) are recommended:<P>
Change these lines
<table cellpadding="0" cellspacing="0" border="0" bgcolor=#ddffdd width=100%>
<tr><td valign="top"><PRE>
image/jpeg		JPEG		c85	.jpeg	.jpg	.jfif 	.jpe
video/mpeg		MPEG		bf8	.mepg	.mpg	.mpv
application/octet-stream Data		ffd     .z      .Z      .exe</PRE></td></tr></table>
to
<table cellpadding="0" cellspacing="0" border="0" bgcolor=#ddffdd width=100%>
<tr><td valign="top"><PRE>image/jpeg		JPEG		c85	.jpg	.jpeg	.jfif 	.jpe
video/mpeg		MPEG		bf8	.mpg	.mpeg	.mpv
application/octet-stream Data		ffd     .z      .Z</PRE></td></tr></table><P>
<HR>
<A HREF="samba_01.htm"><IMG SRC="images/left.gif" ALIGH=LEFT BORDER=0></A> <A HREF="SAMBA.htm"><IMG SRC="images/cont.jpg" ALIGH=CENTRE BORDER=0></A> <A HREF="samba_03.htm" ALIGN=right><IMG SRC="images/right.gif"  ALIGN=RIGHT BORDER=0></A>  

<P>
<I>RISCOS Samba Server</I>
</BODY>
</HTML>
